package com.dkd.day20250727;

import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Scanner;

public class Main38 {
    //误码率是最常用的数据通信传输质量指标。它可以理解为“在多少位数据中出现一位差错”。
    //
    //移动通信网络中的误码率主要是指比特误码率，其计算公式如下: 比特误码率=错误比特数/传输总比特数，
    //
    //为了简单，我们使用字符串来标识通信的信息，一个字符错误了，就认为出现了一个误码
    //
    //输入一个标准的字符串，和一个传输后的字符串，计算误码率
    //
    //字符串会被压缩，
    //例:“2A3B4D5X1Z”表示"AABBBDDDDXXXXXZ"
    //用例会保证两个输入字符串解压后长度一致，解压前的长度不一定一致
    //
    //每个生成后的字符串长度<100000000。
    //
    //输入描述
    //两行，分别为两种字符串的压缩形式。
    //
    //每行字符串 (压缩后的) 长度<100000
    //
    //输出描述
    //一行，错误的字等数量/展开后的总长度
    //
    //备注
    //注意：展开后的字符串不含数字
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String s1 = sc.next();
        String s2 = sc.next();
        String answer = solve(s1, s2);
        System.out.println(answer);
    }

    //ZipStr类

    public static String solve(String s1, String s2) {
        //获得两个ZipStr链条
        LinkedList<ZipStr> zs1 = get(s1);
        LinkedList<ZipStr> zs2 = get(s2);

        int dif = 0;
        int same =0;

        while (zs1.size() > 0) {
            ZipStr z1 = zs1.removeFirst();
            ZipStr z2 = zs2.removeFirst();

            int compareCount = Math.min(z1.num, z2.num);

            if (z1.ch == z2.ch) {
                same += compareCount;
            }else{
                dif += compareCount;
            }

            if (z1.num > z2.num) {
                z1.num -= compareCount;
                zs1.addFirst(z1);
                continue;
            }
            if (z2.num > z1.num) {
                z2.num -= compareCount;
                zs2.addFirst(z2);
            }

        }

        // return dif +'/'+(dif + same);
        return dif + "/" + (dif + same);
    }




    public static LinkedList<ZipStr> get(String s){
        LinkedList<ZipStr> strs = new LinkedList<>();
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < s.length(); i++) {
            char c = s.charAt(i);
            if (c>='0' && c<='9') {
                sb.append(c);
            }else{
                ZipStr zs = new ZipStr(Integer.parseInt(sb.toString()),c);
                strs.add(zs);
                sb.setLength(0);
            }
        }
        return strs;
    }

    static class ZipStr{
        int num;
        char ch;

        public ZipStr(int num, char ch){
            this.num = num;
            this.ch = ch;
        }
    }
}
